153287ae33acd15c38820f3d0640536f5472f1b7,drools-compiler/src/test/java/org/drools/kproject/KProjectTest.java,KProjectTest,testAddModifyRemoveKSession,#,124

Before Change


        List<String> files = asList( new String[]{} );

        // create and add the KBase
        KBase kBase1 = kproj.newKBase( "org.test1", "KBase1" );
        kBase1.setFiles( files );
        kBase1.setEqualsBehavior( AssertBehaviorOption.EQUALITY );
        kBase1.setEventProcessingMode( EventProcessingOption.STREAM );

        MemoryFileSystem mfs = new MemoryFileSystem();
        KProjectChangeLogCommiter.commit( kproj, klog, mfs );
        Folder fld = mfs.getFolder( "src/kbases/org.test1.KBase1" );
        assertTrue( fld.exists() );

        // Creat and add KSession
        KSession kSession1 = kBase1.newKSession( "org.test1", "KSession1" );
        kSession1.setType( "stateful" );
        kSession1.setClockType( ClockTypeOption.get( "realtime" ) );

        KProjectChangeLogCommiter.commit( kproj, klog, mfs );

        MemoryFile mf = (MemoryFile) mfs.getFile( "src/kbases/org.test1.KBase1/org/test1/KSession1Producer.java" );
        String s = new String( mfs.getBytes( mf.getPath().toPortableString() ) );
        assertTrue( s.contains( "newStatefulKnowledgeSession" ) );
        assertTrue( s.contains( "realtime" ) );

        // Modify KSession
        kSession1.setType( "stateless" );
        kSession1.setClockType( ClockTypeOption.get( "pseudo" ) );
        KProjectChangeLogCommiter.commit( kproj, klog, mfs );

        mf = (MemoryFile) mfs.getFile( "src/kbases/org.test1.KBase1/org/test1/KSession1Producer.java" );

After Change


        kproj.setKProjectPath( "src/main/resources/" );
        kproj.setKBasesPath( "src/kbases" );

        List<String> files = asList( new String[]{} );

        // create and add the KBase
        KBase kBase1 = kproj.newKBase( "org.test1", "KBase1" )
                .setFiles( files )
                .setAnnotations( asList( "@ApplicationScoped; @Inject" ) )
                .setEqualsBehavior( AssertBehaviorOption.EQUALITY )
                .setEventProcessingMode( EventProcessingOption.STREAM );

        MemoryFileSystem mfs = new MemoryFileSystem();
        KProjectChangeLogCommiter.commit( kproj, klog, mfs );
        Folder fld = mfs.getFolder( "src/kbases/org.test1.KBase1" );
        assertTrue( fld.exists() );

        // Creat and add KSession
        KSession kSession1 = kBase1.newKSession( "org.test1", "KSession1" )
                                   .setType( "stateful" )
                                   .setClockType( ClockTypeOption.get( "realtime" ) );

        KProjectChangeLogCommiter.commit( kproj, klog, mfs );

        MemoryFile mf = (MemoryFile) mfs.getFile( "src/kbases/org.test1.KBase1/org/test1/KSession1Producer.java" );
        String s = new String( mfs.getBytes( mf.getPath().toPortableString() ) );
        assertTrue( s.contains( "newStatefulKnowledgeSession" ) );
        assertTrue( s.contains( "realtime" ) );

        // Modify KSession
        kSession1.setType( "stateless" )
                 .setClockType( ClockTypeOption.get( "pseudo" ) );
        KProjectChangeLogCommiter.commit( kproj, klog, mfs );

        mf = (MemoryFile) mfs.getFile( "src/kbases/org.test1.KBase1/org/test1/KSession1Producer.java" );